package com.example;

import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * Description:实现留言板
 * User: bjc
 * Date: 2025-07-01
 * Time: 21:04
 */
@RestController
@RequestMapping("/message")
public class MessageController {

    //创建集合，用来存储消息对象
    private List<MessageInfo> messageInfos = new ArrayList<>();

    /**
     * 发布留言接口功能实现
     * @param messageInfo 表示留言对象
     * @return 布尔值，true表示发布成功，false表示发布失败
     */
    @PostMapping("/publish")
    public Boolean publish(MessageInfo messageInfo){
        //1.参数校验
        if(!StringUtils.hasLength(messageInfo.getFrom()) ||
                !StringUtils.hasLength(messageInfo.getTo()) ||
                !StringUtils.hasLength(messageInfo.getSay())){
            return false;
        }
        //2.存储数据，正常是要存在数据库中的，现在先存储在一个集合中
        messageInfos.add(messageInfo);
        return true;
    }
    /**
     * 获取留言接口功能实现
     * @return 留言对象集合
     */
    @GetMapping("/getList")
    public List<MessageInfo> getList(){
        return messageInfos;
    }

}
